home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1995 April / Internet Tools.iso / dos_win / winsock / maillist / 94-03.Z / 94-03 / text0286.txt < prev    next >
Encoding:
Text File  |  1994-03-30  |  6.2 KB  |  148 lines

  1. In article <PETE.94Mar21204403@luggage.tecc.co.uk> pete@tecc.co.uk (Pete Bentley) writes:
  2. > According to my version of the Winsock 1.1 spec, when WSAAsyncSelect()
  3. > is called with FD_WRITE set in the event mask, no message is returned
  4. > to the application until some send() call actually blocks. Fair enough.
  5.  
  6. The spec is not actually 100% clear on this point. The spec says ...
  7.  
  8. "If an event is true when the application initially calls WSAAsyncSelect()
  9. or when the reenabling function is called, then a message is posted as 
  10. appropriate."
  11.  
  12. There is no reason why this paragraph should not apply to FD_WRITE events,
  13. despite the later paragraph which says ...
  14.  
  15. "An FD_WRITE message is posted when a socket is first connected with 
  16. connect() or accepted with accept(), and then after a send() or sendto() 
  17. fails with WSAEWOULDBLOCK and buffer space becomes available."
  18.  
  19. If you assume that this applies WITHIN A SINGLE WSAAsyncSelect CALL, then 
  20. the Trumpet and Microsoft behaviour is correct (and FTP and Distinct are 
  21. wrong).
  22.  
  23. > Some DLLs seem to try and be 'helpful' including the free Microsoft
  24. > stack and Trumpet (up to alpha #18, at least) and will deliver an
  25. > FD_WRITE indication if a WSAAsyncSelect() is issued on a socket which
  26. > includes FD_WRITE *if* the previous mask didn't include FD_WRITE *and*
  27. > the socket is currently writable.  In my opinion, this behavious is
  28. > more useful, as it will naturally kick-start applications which are
  29. > totally message driven.
  30.  
  31. In my opinion, this behaviour is the only correct behaviour. However, the 
  32. authors of the spec. (or possibly the inventors of the English language 
  33. :-) are really to blame, because the spec. is not clear.
  34.  
  35. [ Description of class libraries & state machine omitted ].
  36.  
  37. As it happens, I am doing almost exactly the same thing. Who are _you_ 
  38. working for :-)
  39.  
  40. > And to make the class libraries work I either have to call the
  41. > callbacks directly or post fake FD_WRITE messages.  Neither of these
  42. > approaches are desirable, one risks recursion (the callback is
  43. > extremely likely to queue more data which may need to be flush()ed)
  44. > and the other tends to overlflow the task's message queue when run
  45. > with a 'nice' DLL which is also queuing FD_WRITE indications.
  46.  
  47. In fact, I have managed to crash Trumpet Winsock doing this (I haven't 
  48. figured out why, yet).
  49.  
  50. I have "solved" the problem with the following piece of code ...
  51.  
  52.     if(!strncmp(wsaData.szDescription, "Trumpet ", 8))
  53.         GoodWinsock = 1;
  54.  
  55. and, elsewhere ...
  56.  
  57.     if(!GoodWinsock && (event & FD_WRITE))
  58.         SendMessage(owningWindow, MSG_SELECT, sock(), FD_WRITE);
  59.  
  60. :-( :-( :-(
  61.  
  62. -- 
  63. Nikki Locke,Trumphurst Ltd.(PC & Unix consultancy) nikki@trmphrst.demon.co.uk
  64. trmphrst.demon.co.uk is NOT affiliated with ANY other sites at demon.co.uk.
  65. From news@bigblue.oit.unc.edu Tue Mar 22 19:31:35 1994
  66. Received: from bigblue.oit.unc.edu by SunSITE.Unc.EDU (5.65c+IDA/FvK-1.07) with SMTP
  67.           id AA27222; Tue, 22 Mar 1994 19:31:35 -0500
  68. Received: by bigblue.oit.unc.edu (AIX 3.2/UCB 5.64/4.03)
  69.           id AA21967; Tue, 22 Mar 1994 19:29:49 -0500
  70. Received: from GATEWAY by bigblue with netnews
  71.     for winsock@sunsite.unc.edu (winsock@sunsite.unc.edu)
  72. To: winsock@sunsite.unc.edu
  73. Date: Tue, 22 Mar 1994 15:15:59 UNDEFINED
  74. From: jcolombo@law.uiuc.edu (John Colombo)
  75. Message-Id: <jcolombo.12.003EF131@law.uiuc.edu>
  76. Organization: University of Illinois College of Law
  77. Sender: ses
  78. References: <GREG_KAISEN.12.000A21B6@QM.YALE.EDU>
  79. Subject: Re: WFW 3.11 + Winsock
  80.  
  81. In article <GREG_KAISEN.12.000A21B6@QM.YALE.EDU> GREG_KAISEN@QM.YALE.EDU (Greg Kaisen) writes:
  82. >As yet I have not been able to get my Winsock Apps. to run in a WFW 3.11 
  83. >environment.  I have modified the PROTOCOL.INI file to include a [pktdrv] 
  84. >section, and the appropriate Bindings=  statement.
  85.  
  86. >I load the DIS_PKT9.DOS driver in config.sys
  87.  
  88. >When I boot everything runs on screen as per normal, and the WINPKT reports 
  89. >that it is using the packet driver at vector 60, but alas no Winsock Apps will 
  90. >run.  The WFW stuff does however work.
  91.  
  92. >-Can anyone help me troubleshoot this?  Can someone with a similar setup 
  93. >please send me their CONFIG.SYS, AUTOEXEC.BAT, and PROTOCOL.INI files.
  94.  
  95. >-thanks,  Greg
  96.  
  97. I am running WFW 3.11 with Trumpet Winsock.  My local network server runs on 
  98. Microsoft NT.  Here's what I did.  In the [network drivers] section of 
  99. system.ini, under Transport=, add the following after whatever you have there 
  100. (remember to add a comma before it as a separator): dis_pkt9.dos.  Then change 
  101. the Load RMDrivers line from No to Yes.  Make sure a copy of dis_pkt9.dos is 
  102. in your Windows directory, and delete it from your config.sys file.  Make sure 
  103. your autoexec.bat file runs winpkt.com AFTER the "Net Start" command.  Then 
  104. check your protocol.ini file to make sure you have a [pktdrv] section which 
  105. should look something like this:
  106.  
  107. [pktdrv]
  108. DRIVERNAME=PKTDRV$
  109. BINDINGS=MS$ELNK3    (this is for a 3Com ethernet card, yours may be different)
  110. INTVEC=0x60   (or whatever you are using for winpkt)
  111.  
  112. Let me know if this works.
  113.  
  114. John Colombo
  115. From news@bigblue.oit.unc.edu Tue Mar 22 19:18:20 1994
  116. Received: from bigblue.oit.unc.edu by SunSITE.Unc.EDU (5.65c+IDA/FvK-1.07) with SMTP
  117.           id AA11889; Tue, 22 Mar 1994 21:01:35 -0500
  118. Received: by bigblue.oit.unc.edu (AIX 3.2/UCB 5.64/4.03)
  119.           id AA19439; Tue, 22 Mar 1994 20:44:00 -0500
  120. Received: from GATEWAY by bigblue with netnews
  121.     for winsock@sunsite.unc.edu (winsock@sunsite.unc.edu)
  122. To: winsock@sunsite.unc.edu
  123. Date: Tue, 22 Mar 1994 19:18:20 GMT
  124. From: sjolshag@benji.Colorado.EDU (SJOLSHAGEN  THOMAS LIER)
  125. Message-Id: <sjolshag.764363900@benji.Colorado.EDU>
  126. Organization: University of Colorado, Boulder
  127. Sender: ses
  128. Subject: QVTNet (Windows) mail problem encountered, HELP!
  129.  
  130. Hi,
  131.  
  132. I have just downloaded QVTNet for winsock and got the mail box to work.
  133. Fortunately enough (yeah, right!) I hven't disengaged Call waiting, and I 
  134. lost my carrier as a call came in while I was logged into my account (I-net).
  135. After this I keep getting the message "Maildrop box locked. Is another 
  136. session active?" when I try to start up QvtNet's mailbox. I know that I
  137. haven't loggend into my account for 24 hours, but the message still is there.
  138.  
  139. I can't find any files (hidden or anything else) that contains any information
  140. that suggests that I have a lock.
  141.  
  142. Can anybody please help me ????
  143.  
  144. Thomas
  145.  
  146. sjolshag@colorado.edu
  147.  
  148.